package 笔试2.滴滴.two;

import java.util.*;

/*
6
021331

6
010101

6
000111
 */
public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        sc.nextLine();
        String s= sc.nextLine();
        if(n==1 || n==0){
            System.out.println(0);
            return;
        }
        //
        int re = back(s);
        if(re==99999){
            System.out.println(s.length());
            return;
        }else {
            System.out.println(s.length()-re);
            return;
        }
    }

    static Map<String, Integer> map = new HashMap<>();
    static int resMin=99999;
    static int back(String s){
        if(resMin==0){
            return 0;
        }
        String key = s+",";
        if(s.length()==0){
            resMin=0;
            return 0;
        }

        if(map.containsKey(s))return map.get(key);
        List<String> list = getList0123(s);
        if(list.size()==0){
            resMin=Math.min(s.length(),resMin);
            map.put(key,s.length());
            return s.length();
        }else{
            int min=99999;
            for(String x:list){
                back(x);
                min=Math.min(back(x),min);
            }
            map.put(key,s.length());
            return min;
        }
    }

/*
2,3
6,7
[001123, 000111]
*/
    static List<String> getList0123(String s){
        int n=s.length();
        Set<int[]> set = new HashSet<>();
        for(int i=0;i<s.length();i++){
            if(i==0 || i==s.length()-2 ) {
                if (s.charAt(i) == '0' && s.charAt(i + 1) == '1') {
                    set.add(new int[]{i, i + 1});
                }
                if (s.charAt(i) == '2' && s.charAt(i + 1) == '3') {
                    set.add(new int[]{i, i + 1});
                }
            }
        }

        if (s.charAt(0) == '0' && s.charAt(s.length()-1) == '1') {
            set.add(new int[]{0, s.length()-1});
        }
        if (s.charAt(0) == '2' && s.charAt(s.length()-1) == '3') {
            set.add(new int[]{0, s.length()-1});
        }

//        System.out.println(1);|

        List<String> sList = new ArrayList<>();
        for(int[] x:set){
            int l=x[0],r=x[1];
//            System.out.println(l+","+r);
            String L = itojstr(s,0,l-1);
            String R = itojstr(s,r+1,n-1);
            sList.add(L+R);
        }
        return sList;
    }
    static String itojstr(String s,int st,int ed){
        char[] chars = s.toCharArray();
        StringBuilder sb = new StringBuilder();
        if(st<0 || ed>s.length()){
            return "";
        }
        for(int i=st;i<=ed;i++){
            sb.append(chars[i]);
        }
        return sb.toString();
    }
}
